1. Field of the Invention
The present invention relates to message distribution in public and private networks. More particularly, the present invention is a system and method for optimally routing messages received over public and private networks to an appropriate message receiving subsystem or person.
2. Background of the Invention
Generally, a message distribution system distributes information in the form of one or more messages from a message sender to a message receiver. The message sender combines data representing the information content of the messages into a form that can be transmitted to the message receiver. A variety of communication media exist over which messages can be transmitted, including telephone, wireless communication systems and computer networks. There are several conventional message distribution systems currently in use for delivering messages from a message sender to a message receiver.
One conventional message processing system is a point-to-point message distribution system. Point-to point distribution systems distribute messages by establishing a direct path between a message sender and a message receiver. An example of a point-to-point distribution system is in an automated message routing (AMR) stem.
FIG. 1 illustrates schematically an AMR system 100. In the AMR system 100, a message sender 1s sends a message to a message receiver 1r along a direct path 101. The message receiver 1r is located at logical address 102. Both the message recipient 1r and the route through which the AMR system 100 delivers the message are predetermined by the respective addresses of the message sender 1s and the message receiver 1r. Common forms of addresses for the message sender 1s and the message receiver 1r include a dialed telephone number and an identified mailbox address. The AMR system 100 is limited, however, because it does not select the route over which to transmit a message. Rather, the particular route is determined solely by the respective addresses of the message sender and the message receiver.
A second conventional message processing system is used in telephone call distribution systems. FIG. 2 is a schematic diagram of an automated call distribution (ACD) system 200 for distributing telephone calls received by the ACD system 200. In the ACD system 200, the only information that is known about the telephone call at the time the telephone call is answered is the type of information that will be discussed during the call (e.g., the caller dials a number for customer service for a particular product line), the identification of the caller (e.g., the caller""s telephony system identifier), or both. Such systems are limited because the information content of a telephone call is unknown at the time of call receipt by the ACD system 200. Thus, such content cannot be used in the routing process. As a result, information based on the content of the message, the telephone call, cannot be used to determine the ultimate receiver of the call.
A third conventional message processing system is an automated message distribution (AMD) system. Conventional AMD systems place inbound messages in one or more general-purpose mailboxes that correspond to known pieces of information. In an AMD system, the only information known prior to receipt of the message is similar to that of the ACD system described above, i.e., type of information to be discussed and caller identification data. However, because the information is in a message format, rather than a telephone call, the rules for message distribution in an AMD system can differ substantially from those for distributing calls in an ACD system. For example, conventional content processing mechanisms, including mail header parsers, addressing parsers, and optical mark recognition (OMR) and optical character recognition (OCR), can add further information to the routing decision.
FIG. 3 illustrates schematically a conventional AMD system 300 for message distribution. The AMD system 300 has a mailbox subsystem 302, a content processing subsystem 304 and a message distributor subsystem 306. The mailbox subsystem 304 receives a message from a message sender 1s-6s. The message is received in message format and stored in the mailbox subsystem 302. The content processing subsystem 304 then derives information from a message stored in the mailbox subsystem 302. This information can be passed to the message distributor subsystem 306 to help distribute the message to an appropriate message receiver 1r-4r. However, the information stored in conventional mailbox-based AMD systems is not sufficient to determine optimal routing of the mailbox messages to an appropriate message receiver. This is because no information regarding the priority of the message, the amount of time the message has been in the mailbox subsystem 302, nor the status of the mailbox subsystem 302 potential recipients is monitored in the conventional mailbox system.
The present invention is an AMD system that is optimized for distributing digitally-encoded messages (DEMs) received from a number of sources through a computer network and initially stored in one or more distributed message queues (DMQs). The DEMs can be received from a database, over a LAN or WAN or other communication media. Using the present invention, message distribution is optimized according to a set of configurable distribution rules. The message can assume one of a number of manipulatable forms. For example, in the case of facsimile (fax) data, messages can be stored in one of the TIFF, PCX or DCX formats.
Unlike conventional AMD systems described above, neither the message receiver""s identity nor the route by which the message should be distributed is predetermined. The AMD of the present invention processes information that is received in message format rather than as a telephone call, and therefore can base routing decisions on message content. Message content information is not available to conventional ACD systems as described above.
The present invention uses a distribution rule table (DRT) in which a set of configurable distribution rules are stored. The distribution rules determine various information regarding the AMD system. Using this information, the message distributor of the present AMD system can route received messages to appropriate message recipients in an optional manner. For example, it may be desirable to evenly distribute messages to available message recipients. In this case, the distribution rules in the table would be chosen such to effectuate even distribution of messages to message recipients.
The DRT operates in conjunction with a resource information table (RIT). The RIT maintains information corresponding to the availability of resources that are able to process DEMs that are stored in the DMQs. Thus, the present invention uses the DRT in conjunction with the RIT to optimally route incoming DEMs that are initially stored in the DMQs to resources that are able to process the DEMs.
The AMD system of the present invention receives and stores messages in a variety of formats. Because the messages are stored, the present invention can extract content information from the messages for routing purposes that is not available to conventional AMD or ACD systems. Moreover, the store-and-forward capability of the AMD system enables the present invention to monitor a resource load (RL) containing message processing resources to determine optimal message distribution. The AMD system uses any extracted information to automatically route the received messages to an appropriate message receiver for subsequent processing. In addition, the present invention uses an input message router (IMR) as a pre-processor to determine in which DMQ of a multiple-DMQ system each incoming DEM should initially be stored. For example, a type of transaction, when submitted as a fax, can be determined by any of a number of image-to-text conversion techniques applied to a cover sheet of a fax DEM. Such image-to-text conversion techniques include optical mark recognition (OMR), optical character recognition (OCR), and handwriting recognition. The AMD system can use the transaction information to route the DEM to an appropriate DMQ in the message distributor. The message distributor applies a set of distribution rules to the messages in the queue to optimally distribute the messages to message receivers for subsequent processing.